// license-header java merge-point
/**
 * This is only generated once! It will never be overwritten.
 * You can (and have to!) safely modify it by hand.
 */
package com.systemsjr.jrtim.course;
/**
 * @see com.systemsjr.jrtim.course.Module
 */
public class ModuleDaoImpl
    extends com.systemsjr.jrtim.course.ModuleDaoBase
{
    /**
     * @see com.systemsjr.jrtim.course.ModuleDao#toModuleVO(com.systemsjr.jrtim.course.Module, com.systemsjr.jrtim.course.vo.ModuleVO)
     */
    public void toModuleVO(
        com.systemsjr.jrtim.course.Module source,
        com.systemsjr.jrtim.course.vo.ModuleVO target)
    {
        // @todo verify behavior of toModuleVO
        super.toModuleVO(source, target);
    }


    /**
     * @see com.systemsjr.jrtim.course.ModuleDao#toModuleVO(com.systemsjr.jrtim.course.Module)
     */
    public com.systemsjr.jrtim.course.vo.ModuleVO toModuleVO(final com.systemsjr.jrtim.course.Module entity)
    {
        // @todo verify behavior of toModuleVO
        return super.toModuleVO(entity);
    }


    /**
     * Retrieves the entity object that is associated with the specified value object
     * from the object store. If no such entity object exists in the object store,
     * a new, blank entity is created
     */
    private com.systemsjr.jrtim.course.Module loadModuleFromModuleVO(com.systemsjr.jrtim.course.vo.ModuleVO moduleVO)
    {
        // @todo implement loadModuleFromModuleVO
        throw new java.lang.UnsupportedOperationException("com.systemsjr.jrtim.course.loadModuleFromModuleVO(com.systemsjr.jrtim.course.vo.ModuleVO) not yet implemented.");

        /* A typical implementation looks like this:
        com.systemsjr.jrtim.course.Module module = this.load(moduleVO.getId());
        if (module == null)
        {
            module = com.systemsjr.jrtim.course.Module.Factory.newInstance();
        }
        return module;
        */
    }

    
    /**
     * @see com.systemsjr.jrtim.course.ModuleDao#moduleVOToEntity(com.systemsjr.jrtim.course.vo.ModuleVO)
     */
    public com.systemsjr.jrtim.course.Module moduleVOToEntity(com.systemsjr.jrtim.course.vo.ModuleVO moduleVO)
    {
        // @todo verify behavior of moduleVOToEntity
        com.systemsjr.jrtim.course.Module entity = this.loadModuleFromModuleVO(moduleVO);
        this.moduleVOToEntity(moduleVO, entity, true);
        return entity;
    }


    /**
     * @see com.systemsjr.jrtim.course.ModuleDao#moduleVOToEntity(com.systemsjr.jrtim.course.vo.ModuleVO, com.systemsjr.jrtim.course.Module)
     */
    public void moduleVOToEntity(
        com.systemsjr.jrtim.course.vo.ModuleVO source,
        com.systemsjr.jrtim.course.Module target,
        boolean copyIfNull)
    {
        // @todo verify behavior of moduleVOToEntity
        super.moduleVOToEntity(source, target, copyIfNull);
    }

}